[INFO] fetching crate prost-helper 0.8.3...
[INFO] checking prost-helper-0.8.3 against try#d1d7143153307f561233bd4d93e2a3b24157b081 for pr-151539-1
[INFO] extracting crate prost-helper 0.8.3 into /workspace/builds/worker-1-tc2/source
[INFO] started tweaking crates.io crate prost-helper 0.8.3
[INFO] finished tweaking crates.io crate prost-helper 0.8.3
[INFO] tweaked toml for crates.io crate prost-helper 0.8.3 written to /workspace/builds/worker-1-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate prost-helper 0.8.3 on toolchain d1d7143153307f561233bd4d93e2a3b24157b081
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 32 packages to latest compatible versions
[INFO] [stderr]       Adding base64 v0.21.7 (available: v0.22.1)
[INFO] [stderr]       Adding prost v0.12.6 (available: v0.14.4)
[INFO] [stderr]       Adding uuid7 v0.7.2 (available: v1.8.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1
[INFO] running `Command { std: "docker" "start" "9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1" "/opt/rustwide/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1" "/opt/rustwide/cargo-home/bin/cargo" "+d1d7143153307f561233bd4d93e2a3b24157b081" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]     Checking fstr v0.2.22
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking uuid7 v0.7.2
[INFO] [stderr]    Compiling prost-derive v0.12.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking prost v0.12.6
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking prost-helper v0.8.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:8:11
[INFO] [stdout]     |
[INFO] [stdout]   8 |         $(impl std::convert::From<$type> for Vec<u8> {
[INFO] [stdout]     |           ^^^^^------------------^^^^^^^^^^^^---^^^^
[INFO] [stdout]     |                |                             |
[INFO] [stdout]     |                |                             `Vec` is not local
[INFO] [stdout]     |                `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn test_prost_try_into_vec() {
[INFO] [stdout]     |     ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |         prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |                |
[INFO] [stdout]     |         |                `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 |         impl std::convert::From<&$type> for Vec<u8> {
[INFO] [stdout]     |         ^^^^^------------------^^^^^^^^^^^^^---^^^^
[INFO] [stdout]     |              |                              |
[INFO] [stdout]     |              |                              `Vec` is not local
[INFO] [stdout]     |              `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn test_prost_try_into_vec() {
[INFO] [stdout]     |     ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |         prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |                |
[INFO] [stdout]     |         |                `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:8:11
[INFO] [stdout]     |
[INFO] [stdout]   8 |         $(impl std::convert::From<$type> for Vec<u8> {
[INFO] [stdout]     |           ^^^^^------------------^^^^^^^^^^^^---^^^^
[INFO] [stdout]     |                |                             |
[INFO] [stdout]     |                |                             `Vec` is not local
[INFO] [stdout]     |                `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn test_prost_try_into_vec() {
[INFO] [stdout]     |     ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |         prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |                             |
[INFO] [stdout]     |         |                             `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:15:9
[INFO] [stdout]     |
[INFO] [stdout]  15 |         impl std::convert::From<&$type> for Vec<u8> {
[INFO] [stdout]     |         ^^^^^------------------^^^^^^^^^^^^^---^^^^
[INFO] [stdout]     |              |                              |
[INFO] [stdout]     |              |                              `Vec` is not local
[INFO] [stdout]     |              `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn test_prost_try_into_vec() {
[INFO] [stdout]     |     ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |         prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout]     |         ------------------------------------------
[INFO] [stdout]     |         |                             |
[INFO] [stdout]     |         |                             `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_vec` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_vec` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:52:11
[INFO] [stdout]     |
[INFO] [stdout]  52 |         $(impl std::convert::TryFrom<Vec<u8>> for $type {
[INFO] [stdout]     |           ^^^^^---------------------^---^^^^^^^^^^^^^^^
[INFO] [stdout]     |                |                     |
[INFO] [stdout]     |                |                     `Vec` is not local
[INFO] [stdout]     |                `TryFrom` is not local
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn test_prost_try_into_vec() {
[INFO] [stdout]     |     ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |         prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout] 119 |         vec_try_into_prost!(Hello, World);
[INFO] [stdout]     |         ---------------------------------
[INFO] [stdout]     |         |                   |
[INFO] [stdout]     |         |                   `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:52:51
[INFO] [stdout]     |
[INFO] [stdout]  52 |           $(impl std::convert::TryFrom<Vec<u8>> for $type {
[INFO] [stdout]     |  ___________________________________________________^
[INFO] [stdout]  53 | |             type Error = prost::DecodeError;
[INFO] [stdout]  54 | |             fn try_from(buf: Vec<u8>) -> Result<Self, Self::Error> {
[INFO] [stdout]  55 | |                 let msg: $type = Message::decode(&buf[..])?;
[INFO] [stdout] ...   |
[INFO] [stdout]  60 | |         impl std::convert::TryFrom<&[u8]> for $type {
[INFO] [stdout]     | |        ^     --------------------- `TryFrom` is not local
[INFO] [stdout]     | |________|
[INFO] [stdout]     |
[INFO] [stdout] ...
[INFO] [stdout] 117 |       fn test_prost_try_into_vec() {
[INFO] [stdout]     |       ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |           prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout] 119 |           vec_try_into_prost!(Hello, World);
[INFO] [stdout]     |           ---------------------------------
[INFO] [stdout]     |           |                   |
[INFO] [stdout]     |           |                   `Hello` is not local
[INFO] [stdout]     |           in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:52:11
[INFO] [stdout]     |
[INFO] [stdout]  52 |         $(impl std::convert::TryFrom<Vec<u8>> for $type {
[INFO] [stdout]     |           ^^^^^---------------------^---^^^^^^^^^^^^^^^
[INFO] [stdout]     |                |                     |
[INFO] [stdout]     |                |                     `Vec` is not local
[INFO] [stdout]     |                `TryFrom` is not local
[INFO] [stdout] ...
[INFO] [stdout] 117 |     fn test_prost_try_into_vec() {
[INFO] [stdout]     |     ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |         prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout] 119 |         vec_try_into_prost!(Hello, World);
[INFO] [stdout]     |         ---------------------------------
[INFO] [stdout]     |         |                          |
[INFO] [stdout]     |         |                          `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:52:51
[INFO] [stdout]     |
[INFO] [stdout]  52 |           $(impl std::convert::TryFrom<Vec<u8>> for $type {
[INFO] [stdout]     |  ___________________________________________________^
[INFO] [stdout]  53 | |             type Error = prost::DecodeError;
[INFO] [stdout]  54 | |             fn try_from(buf: Vec<u8>) -> Result<Self, Self::Error> {
[INFO] [stdout]  55 | |                 let msg: $type = Message::decode(&buf[..])?;
[INFO] [stdout] ...   |
[INFO] [stdout]  60 | |         impl std::convert::TryFrom<&[u8]> for $type {
[INFO] [stdout]     | |        ^     --------------------- `TryFrom` is not local
[INFO] [stdout]     | |________|
[INFO] [stdout]     |
[INFO] [stdout] ...
[INFO] [stdout] 117 |       fn test_prost_try_into_vec() {
[INFO] [stdout]     |       ---------------------------- move the `impl` block outside of this function `test_prost_try_into_vec`
[INFO] [stdout] 118 |           prost_into_vec!((Hello, 32), (World, 256));
[INFO] [stdout] 119 |           vec_try_into_prost!(Hello, World);
[INFO] [stdout]     |           ---------------------------------
[INFO] [stdout]     |           |                          |
[INFO] [stdout]     |           |                          `World` is not local
[INFO] [stdout]     |           in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `vec_try_into_prost` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `vec_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:28:11
[INFO] [stdout]     |
[INFO] [stdout]  28 |         $(impl std::convert::From<$type> for bytes::Bytes {
[INFO] [stdout]     |           ^^^^^------------------^^^^^^^^^^^^------------
[INFO] [stdout]     |                |                             |
[INFO] [stdout]     |                |                             `Bytes` is not local
[INFO] [stdout]     |                `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn test_prost_try_into_bytes() {
[INFO] [stdout]     |     ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes`
[INFO] [stdout] 133 |         use bytes::Bytes;
[INFO] [stdout] 134 |         prost_into_bytes!((Hello, 32), (World, 256));
[INFO] [stdout]     |         --------------------------------------------
[INFO] [stdout]     |         |                  |
[INFO] [stdout]     |         |                  `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:35:9
[INFO] [stdout]     |
[INFO] [stdout]  35 |         impl std::convert::From<&$type> for bytes::Bytes {
[INFO] [stdout]     |         ^^^^^------------------^^^^^^^^^^^^^------------
[INFO] [stdout]     |              |                              |
[INFO] [stdout]     |              |                              `Bytes` is not local
[INFO] [stdout]     |              `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn test_prost_try_into_bytes() {
[INFO] [stdout]     |     ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes`
[INFO] [stdout] 133 |         use bytes::Bytes;
[INFO] [stdout] 134 |         prost_into_bytes!((Hello, 32), (World, 256));
[INFO] [stdout]     |         --------------------------------------------
[INFO] [stdout]     |         |                  |
[INFO] [stdout]     |         |                  `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:28:11
[INFO] [stdout]     |
[INFO] [stdout]  28 |         $(impl std::convert::From<$type> for bytes::Bytes {
[INFO] [stdout]     |           ^^^^^------------------^^^^^^^^^^^^------------
[INFO] [stdout]     |                |                             |
[INFO] [stdout]     |                |                             `Bytes` is not local
[INFO] [stdout]     |                `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn test_prost_try_into_bytes() {
[INFO] [stdout]     |     ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes`
[INFO] [stdout] 133 |         use bytes::Bytes;
[INFO] [stdout] 134 |         prost_into_bytes!((Hello, 32), (World, 256));
[INFO] [stdout]     |         --------------------------------------------
[INFO] [stdout]     |         |                               |
[INFO] [stdout]     |         |                               `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:35:9
[INFO] [stdout]     |
[INFO] [stdout]  35 |         impl std::convert::From<&$type> for bytes::Bytes {
[INFO] [stdout]     |         ^^^^^------------------^^^^^^^^^^^^^------------
[INFO] [stdout]     |              |                              |
[INFO] [stdout]     |              |                              `Bytes` is not local
[INFO] [stdout]     |              `From` is not local
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn test_prost_try_into_bytes() {
[INFO] [stdout]     |     ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes`
[INFO] [stdout] 133 |         use bytes::Bytes;
[INFO] [stdout] 134 |         prost_into_bytes!((Hello, 32), (World, 256));
[INFO] [stdout]     |         --------------------------------------------
[INFO] [stdout]     |         |                               |
[INFO] [stdout]     |         |                               `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_into_bytes` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_into_bytes` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:73:11
[INFO] [stdout]     |
[INFO] [stdout]  73 |         $(impl std::convert::TryFrom<bytes::Bytes> for $type {
[INFO] [stdout]     |           ^^^^^---------------------^------------^^^^^^^^^^^
[INFO] [stdout]     |                |                     |
[INFO] [stdout]     |                |                     `Bytes` is not local
[INFO] [stdout]     |                `TryFrom` is not local
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn test_prost_try_into_bytes() {
[INFO] [stdout]     |     ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes`
[INFO] [stdout] ...
[INFO] [stdout] 135 |         bytes_try_into_prost!(Hello, World);
[INFO] [stdout]     |         -----------------------------------
[INFO] [stdout]     |         |                     |
[INFO] [stdout]     |         |                     `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `bytes_try_into_prost` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `bytes_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:73:11
[INFO] [stdout]     |
[INFO] [stdout]  73 |         $(impl std::convert::TryFrom<bytes::Bytes> for $type {
[INFO] [stdout]     |           ^^^^^---------------------^------------^^^^^^^^^^^
[INFO] [stdout]     |                |                     |
[INFO] [stdout]     |                |                     `Bytes` is not local
[INFO] [stdout]     |                `TryFrom` is not local
[INFO] [stdout] ...
[INFO] [stdout] 132 |     fn test_prost_try_into_bytes() {
[INFO] [stdout]     |     ------------------------------ move the `impl` block outside of this function `test_prost_try_into_bytes`
[INFO] [stdout] ...
[INFO] [stdout] 135 |         bytes_try_into_prost!(Hello, World);
[INFO] [stdout]     |         -----------------------------------
[INFO] [stdout]     |         |                            |
[INFO] [stdout]     |         |                            `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `bytes_try_into_prost` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `bytes_try_into_prost` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:88:11
[INFO] [stdout]     |
[INFO] [stdout]  88 |         $(impl ToJson for $type {
[INFO] [stdout]     |           ^^^^^------^^^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                `ToJson` is not local
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn test_prost_to_json() {
[INFO] [stdout]     |     ----------------------- move the `impl` block outside of this function `test_prost_to_json`
[INFO] [stdout] ...
[INFO] [stdout] 148 |         prost_to_json!(Hello, World);
[INFO] [stdout]     |         ----------------------------
[INFO] [stdout]     |         |              |
[INFO] [stdout]     |         |              `Hello` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_to_json` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_to_json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]    --> src/macros.rs:88:11
[INFO] [stdout]     |
[INFO] [stdout]  88 |         $(impl ToJson for $type {
[INFO] [stdout]     |           ^^^^^------^^^^^^^^^^
[INFO] [stdout]     |                |
[INFO] [stdout]     |                `ToJson` is not local
[INFO] [stdout] ...
[INFO] [stdout] 145 |     fn test_prost_to_json() {
[INFO] [stdout]     |     ----------------------- move the `impl` block outside of this function `test_prost_to_json`
[INFO] [stdout] ...
[INFO] [stdout] 148 |         prost_to_json!(Hello, World);
[INFO] [stdout]     |         ----------------------------
[INFO] [stdout]     |         |                     |
[INFO] [stdout]     |         |                     `World` is not local
[INFO] [stdout]     |         in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the macro `prost_to_json` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]     = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]     = note: this warning originates in the macro `prost_to_json` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.33s
[INFO] running `Command { std: "docker" "inspect" "9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1", kill_on_drop: false }`
[INFO] [stdout] 9024ebc3a8ab60398b59f2612b510bfd89c4f78de75c2badf646cdbe578e6da1
